# encoding: UTF-8

'''
简单的神经网络，实现简单的二值分类器
'''
import tensorflow as tf
import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

# 在tf中创建常量
a = tf.constant([1.0, 2.0], name='a')
b = tf.constant([3.0, 4.0], name='b')

result = a + b

#tensorflow 会使用默认一个图
#输出为;Tensor("add:0", shape=(2,), dtype=float32) , 表示张量是‘add’节点第一个结果，shape为2
print(a.graph is tf.get_default_graph())

with tf.Session() as s:
    s.run(result)
    print(result)

#创建图,使用0初始化变量
g1 = tf.Graph()
with g1.as_default():
    v = tf.get_variable('v',[1],initializer=tf.zeros_initializer())

#创建图，使用1初始化
g2 = tf.Graph()
with g2.as_default():
    v= tf.get_variable('v',[2],initializer=tf.ones_initializer())

#设置图g1创建会话，并获取g1中的变量
with tf.Session(graph=g1) as sess:
    tf.global_variables_initializer().run()
    with tf.variable_scope("",reuse=True):
        print(sess.run(tf.get_variable('v')))

#使用g2创建会话，并获取g2中的变量
with tf.Session(graph=g2) as sess:
    tf.global_variables_initializer().run()
    with tf.variable_scope("",reuse=True):
        print(sess.run(tf.get_variable('v')))


#创建session
config = tf.ConfigProto(allow_soft_placement=True,log_device_placement=True)
#创建并注册为默认会话
sess = tf.InteractiveSession(config=config)
sess.run(result)
print(result.eval())
sess.close()

